mark-sweep GC
#プログラミング言語処理系
ガーベジコレクタ
の
アルゴリズム
参照関係をグラフとしてmarkし、markされていないものをsweepする
mark
rootから参照されているものをmark
markされているものから参照されているものをmark
(使われるであろう
ポインタ
、値をmarkする)
sweep
markされていないオブジェクトを切っていく
メリット
デメリット
GCされるまでが遅い
リファレンスカウント法
と比べて
O(m+n)
m 生きているオブジェクト数
n markしたオブジェクト数
sweepされるまでメモリが増える
実例
オブジェクト志向言語
に多い
Lisp
JavaScript
性能
スループット中
レイテンシ中